#pragma once
#include <string>
#include <fstream>

class Logger {
public:
    static Logger& GetInstance();  // 单例获取
    void Info(const std::string& msg);  // 记录普通操作
    void Error(const std::string& msg); // 记录错误
    void Debug(const std::string& msg); // 记录调试信息
    void Warning(const std::string& msg); // 记录警告信息
private:
    Logger();  // 私有构造，禁止外部实例化
    ~Logger();
    Logger(const Logger&) = delete;  // 禁止拷贝
    Logger& operator=(const Logger&) = delete;

    std::ofstream log_file_;  // 日志文件（如db.log）
};